package com.ruoyi.system.domain.HUAWEI;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.ruoyi.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;

import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 批次物料产品关系追溯对象 EMS_BARCODE_MATERIAL
 *
 * @author ruoyi
 * @date 2023-03-30
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
@TableName("EMS_BARCODE_MATERIAL")
public class EmsBarcodeMaterial implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "华为任务令")
    @Excel(name = "华为任务令")
    private String po;

    @ApiModelProperty(value = "产品条码")
    @Excel(name = "产品条码")
    private String barCode;

    @ApiModelProperty(value = "物料编码")
    @Excel(name = "物料编码")
    private String itemCode;

    @ApiModelProperty(value = "物料制造商")
    @Excel(name = "物料制造商")
    private String manufactory;

    @ApiModelProperty(value = "物料的制造周期")
    @Excel(name = "物料的制造周期")
    private String dateCode;

    @ApiModelProperty(value = "物料的制造批次")
    @Excel(name = "物料的制造批次")
    private String lotCode;

    @ApiModelProperty(value = "实际数量")
    @Excel(name = "实际数量")
    private Double quantity;

    @ApiModelProperty(value = "物料供应商")
    @Excel(name = "物料供应商")
    private String supplier;

    @ApiModelProperty(value = "供应商编码")
    @Excel(name = "供应商编码")
    private String vendorId;

    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private Integer orgId;

    /**
     * createdDate
     */
    @Excel(name = "采集时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "采集时间")
    private Date createdDate;

    /**
     * createdBy
     */
    @ApiModelProperty(value = "加工厂")
    @Excel(name = "加工厂")
    private String createdBy;

    /**
     * lastUpdatedDate
     */
    @Excel(name = "华为系统接收数据时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "华为系统接收数据时间")
    private Date lastUpdatedDate;

    /**
     * lastUpdatedBy
     */
    @ApiModelProperty(value = "华为系统生成")
    @Excel(name = "华为系统生成")
    private String lastUpdatedBy;

    /**
     * uploadFlag
     */
    @ApiModelProperty(value = "上传标识 0表示待发送,1表示发送 2表示发送完 9表示发送失败")
    @Excel(name = "客户类型")
    private Integer uploadFlag;

    /**
     * checkMessage
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String checkMessage;

    /**
     * segment1
     */
    @ApiModelProperty(value = "segment1")
    @Excel(name = "segment1")
    private String segment1;

    /**
     * segment2
     */
    @ApiModelProperty(value = "segment2")
    @Excel(name = "segment2")
    private String segment2;

    /**
     * segment3
     */
    @ApiModelProperty(value = "segment3")
    @Excel(name = "segment3")
    private String segment3;

    /**
     * segment4
     */
    @ApiModelProperty(value = "segment4")
    @Excel(name = "segment4")
    private String segment4;

    /**
     * segment5
     */
    @ApiModelProperty(value = "segment5")
    @Excel(name = "segment5")
    private Long segment5;

    /**
     * segment6
     */
    @ApiModelProperty(value = "segment6")
    @Excel(name = "segment6")
    private Long segment6;

    /**
     * segment7
     */
    @Excel(name = "segment7", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "segment7")
    private Date segment7;

    /**
     * emsTransId
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String emsTransId;

    /**
     * itemId
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private Long itemId;

    /**
     * checkFlag
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private Long checkFlag;

    /**
     * checkInfo
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String checkInfo;

    /**
     * barItemCode
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String barItemCode;

    /**
     * barItemId
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private Long barItemId;

    /**
     * segment8
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment8;

    /**
     * segment9
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment9;

    /**
     * segment10
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment10;

    /**
     * segment11
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment11;

    /**
     * segment12
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment12;

    /**
     * segment13
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment13;

    /**
     * segment14
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment14;

    /**
     * segment15
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String segment15;

    /**
     * ptionSegment
     */
    @ApiModelProperty(value = "客户类型 0客户 1供应商")
    @Excel(name = "客户类型")
    private String ptionSegment;

    @ApiModelProperty(value = "采集开始时间")
    @Excel(name = "采集开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(exist = false)
    private Date beginTime;

    @ApiModelProperty(value = "采集结束时间")
    @Excel(name = "采集结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(exist = false)
    private Date endTime;
}
